package com.my12306.train.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.my12306.common.model.vo.PageVo;
import com.my12306.common.util.PageUtils;
import com.my12306.train.model.entity.RouteScheduleRelationEntity;

import java.util.List;

/**
 * 线路与车次的service
 *
 * @author wj¦
 * @email
 * @date 2020-07-24 20:58:07
 */
public interface RouteScheduleRelationService extends IService<RouteScheduleRelationEntity> {

    /**
     * 分页查询线路与车次
     *
     * @param pageVo
     * @return
     */
    PageUtils queryRouteScheduleByPage(PageVo pageVo);

    /**
     * 查询分页总数据量
     * @param pageVo
     * @param logicDelete
     * @return
     */
    Integer queryRouteScheduleCountByPage(PageVo pageVo, Integer logicDelete);

    /**
     * 为线路添加车次
     *
     * @param routeSchedule
     * @return
     */
    Long saveRouteSchedule(RouteScheduleRelationEntity routeSchedule);

    /**
     * 修改线路与车次的关系。。
     *
     * @param routeSchedule
     */
    Long updateRouteScheduleById(RouteScheduleRelationEntity routeSchedule);

    /**
     * 批量删除列车于线路之间的关系。
     *
     * @param ids
     */
    void deleteRouteScheduleByIds(List<Long> ids,int logicDelete);

    /**
     * 根据线路id 删除所有该线路的车次。
     *
     * @param routeId
     */
    void   deleteRouteScheduleByRouteId(List<Long> routeId,int logicDelete);
}

